var categories = [] // 产品类别
var category = [] // 险种类别
var types = [] // 发布栏目
var permissions = [] // 可查看人员(岗位)
var organs = [] // 可查看机构
var productFilesTypes = [] // 产品属性附件类别
var projectFilesTypes = [] // 项目/活动附件类别
var saleFilesTypes = [] // 销售计划附件类别
var products = [] // 使用产品
var channels = [] // 使用渠道
var productState = []// 产品状态
var relaseState = []// 发布状态
var examineState = []// 审批状态
var product = new Vue(
		{
			el : '#product',
			data : function() {
				return {
					showProductDialog : false, // 查看个性dialog
					viewTitle : '', // 查看修改title
					isDisabled : false, // 是否修改状态
					form : {},
					productFilesTypes : productFilesTypes,
					organs : organs,
					currentpage : 1,// 当前页数
					pageBean : [// 分页参数列表
					],
					searchForm : { // 查询条件
						productcode : '',
						productname : '',
						insurancetype : '',
						productstate : '',
						atttype : '',
						releasestate : '',
						createname : '',
						createtime : '',
						ident : 0,
						releasecolumn : '',
						viewabledept : '',
						viewablepsn : '',
						examineState : ''
					},
					productItems : [], // 产品资料列表
					searchForm2 : { // 查询条件
						productcode : '',
						productname : '',
						insurancetype : '',
						productstate : '',
						atttype : '',
						releasestate : '',
						createname : '',
						createtime : '',
						ident : 0,
						releasecolumn : '',
						viewabledept : '',
						viewablepsn : '',
						examineState : ''
					},
					start : false,
					start2 : false,
					approveNoNotes:false
				}
			},
			created : function() {
				if(this.GetQueryString("update")==1){
					this.$alert('','修改成功', {
                        confirmButtonText: '确定',
                        type:'success',
                        center:'true'
                    });
				}
				this.loadOption()
				this.findProduct()
			},
			methods : {
				/**
				 * 下一页上一页按钮
				 */
				handleCurrentChange : function(val) {
					this.currentpage = val;
					if (this.start) {// false表示没点击搜索
						var data = JSON.stringify(this.searchForm);
					} else {
						var data = JSON.stringify(this.searchForm2);
					}
					this.findProduct(data);
				},
		        GetQueryString:function(name){
			        var reg = new RegExp("(^|&)"+ name +"=([^&]*)(&|$)");
			        var r = window.location.search.substr(1).match(reg);
			        if(r!=null)return decodeURI(r[2]); return null;
		        },
				findProduct : function(data) {
					var _this = this;
					if (!data) {
						if (this.start) {
							var data = JSON.stringify(this.searchForm);
						} else {
							var data = JSON.stringify(this.searchForm2);
						}
					}
					$.ajax({
						url : '/product/findProduct',
						type : 'post',
						data : {
							"data" : data,
							"page" : _this.currentpage
						},
						dataType : 'json',
						success : function(res) {
							_this.exhibition(res);
                            showWindInit();
						},
						error : function(err) {
							if(err.responseJSON.message=="session clean"){
		                        errorMessage(_this.$message, '登陆已失效重新登陆!');
		                        toLogin();
		                        return;
		                    }
                            if(err.status == 403){
                                errorMessage(_this.$message, "没有权限，请先申请该权限！");
                                return;
                            }
							errorMessage(_this.$message, '获取产品列表出错！')
						}
					})
				},
				/**
				 * 多条件查询
				 */
				selectProduct : function() {
					this.currentpage = 1;
					if(this.searchForm.productcode=="" && this.searchForm.productname=="" && this.searchForm.insurancetype=="" && this.searchForm.productstate=="" && this.searchForm.atttype=="" && this.searchForm.releasestate=="" && this.searchForm.createname=="" && this.searchForm.createtime=="" && this.searchForm.releasecolumn=="" && this.searchForm.viewabledept=="" && this.searchForm.viewablepsn=="" && this.searchForm.examineState==""){
						if (this.start2) {
							this.start = false;
							this.start2 = false;
						}
					} else {
						this.start = true;
					}
					this.findProduct();
				},
				/**
				 * 
				 * 处理页面数据展示
				 */
				exhibition : function(res) {
					var _this = this;
					_this.productItems = res.data.beanList
					var page = {}
					page['totalNumber'] = res.data.totalNumber
					page['totalPage'] = res.data.totalPage
					_this.pageBean = page
				},
				viewItem : function(index) { // 查看
					this.showProductDialog = true
					this.viewTitle = '查看产品详情'
					this.isDisabled = true
                    if(index == -1){
                        this.form = JSON.parse(sessionStorage.getItem("cacheVal"))
                        sessionStorage.setItem("cacheVal","");
                    }else{
                        this.form = this.productItems[index]
                    }
					this.changeRadio();
				},
				changeRadio: function () { //审批通过or不通过
		    		if (this.form.approvalstatus === '审批未通过') {
		    			this.approveNoNotes = true
		    		} else {
		    			this.approveNoNotes = false
		    		}
		        },
				// 下载附件
				downloadFile : function(file) {
					window.location.href = '/product/downloadFile?data='
							+ encodeURIComponent(JSON.stringify(file));
				},
				/*
				 * 页面初始化,加载下拉选项
				 */
				loadOption : function() {
					var _this = this;
					$.ajax({
								url : '/product/loadOption',
								type : 'get',
								dataType : 'json',
								success : function(res) {
									_this.category = res.data.projectInsuranceCategory;// 险种类别
									_this.productState = res.data.productState;// 产品状态
									_this.productFilesTypes = res.data.productEnclosureCategory;// 产品属性附件类别
									_this.relaseState = res.data.releaseState;// 发布状态
									_this.types = res.data.releaseColumn;// 发布栏目
									_this.organs = res.data.postOrganization;// 可查看岗机构
									_this.examineState = res.data.examineState;// 审核状态
									_this.permissions = res.data.TP_NAME;// 可查看岗位
								},
								error : function(err) {
									if(err.responseJSON.message=="session clean"){
				                        errorMessage(_this.$message, '登陆已失效重新登陆!');
				                        toLogin();
				                        return;
				                    }
									errorMessage(_this.$message, '初始化下拉列表出错！')
								}
							})
				},
				changeItem : function(index) { // 修改
					window.location.href = './productRelease?id='
							+ this.productItems[index].id + '&type=product'
				},
				deleteItem : function(index) { // 删除

				},
				resetSearchForm : function(formName) { // 清空搜索条件
					this.$refs[formName].resetFields()
					this.start = false;
					this.start2 = true;
					this.findProduct();
				}
			}
		})
var activity = new Vue(
		{
			el : '#activity',
			data : function() {
				return {
					showActivityDialog : false, // 查看个性dialog
					viewTitle : '', // 查看修改title
					isDisabled : false, // 是否修改状态
					form : {},
					projectFilesTypes : projectFilesTypes,
					currentpage : 1,// 当前页数
					pageBean : [// 分页参数列表
					],
					searchForm : { // 查询条件
						projectname : '',
						projectstartdate : '',
						releasestate : '',
						createname : '',
						createtime : '',
						atttype : '',
						examineState : '',
						ident : 0
					},
					activityItems : [ // 项目活动列表
					],
					searchForm2 : { // 查询条件
						projectname : '',
						projectstartdate : '',
						releasestate : '',
						createname : '',
						createtime : '',
						atttype : '',
						examineState : '',
						ident : 0
					},
					start : false,
					start2 : false,
					approveNoNotes:false
				}
			},
			created : function() {
				if(this.GetQueryString("update")==1){
					this.$alert('','修改成功', {
                        confirmButtonText: '确定',
                        type:'success',
                        center:'true'
                    });
				}
				this.loadOption()
				this.findProject()
				var formatDate = this.activityItems.map(function(item) {
					return item.date[0] + ' 至 ' + item.date[1]
				})
				for (var i = 0; i < this.activityItems.length; i++) {
					this.$set(this.activityItems[i], 'formatDate',
							formatDate[i])
				}
			},
			methods : {
				/**
				 * 下一页上一页按钮
				 */
				handleCurrentChange : function(val) {
					this.currentpage = val;
					if (this.start) {// false表示没点击搜索
						var data = JSON.stringify(this.searchForm);
					} else {
						var data = JSON.stringify(this.searchForm2);
					}
					this.findProject(data);
				},
				GetQueryString:function(name){
			        var reg = new RegExp("(^|&)"+ name +"=([^&]*)(&|$)");
			        var r = window.location.search.substr(1).match(reg);
			        if(r!=null)return decodeURI(r[2]); return null;
		        },
				findProject : function(data) {
					var _this = this;
					if (!data) {
						if (this.start) {
							var data = JSON.stringify(this.searchForm);
						} else {
							var data = JSON.stringify(this.searchForm2);
						}
					}
					$.ajax({
						url : '/project/findProject',
						type : 'post',
						data : {
							"data" : data,
							"page" : _this.currentpage
						},
						dataType : 'json',
						success : function(res) {
							_this.exhibition(res);
                            showWindInit();
						},
						error : function(err) {
							if(err.responseJSON.message=="session clean"){
		                        errorMessage(_this.$message, '登陆已失效重新登陆!');
		                        toLogin();
		                        return;
		                    }
                            if(err.status == 403){
                                errorMessage(_this.$message, "没有权限，请先申请该权限！");
                                return;
                            }
							errorMessage(_this.$message, '获取项目/活动列表出错！')
						}
					})
				},
				// 下载附件
				downloadFile : function(file) {
					window.location.href = '/product/downloadFile?data='
							+ encodeURIComponent(JSON.stringify(file));
				},
				/**
				 * 多条件查询
				 */
				selectProject : function() {
					this.currentpage = 1;
					if(this.searchForm.projectname=="" && this.searchForm.projectstartdate=="" && this.searchForm.releasestate=="" && this.searchForm.createname=="" && this.searchForm.createtime=="" && this.searchForm.atttype=="" && this.searchForm.examineState==""){
						if (this.start2) {
							this.start = false;
							this.start2 = false;
						}
					} else {
						this.start = true;
					}
					this.findProject();
				},
				/**
				 * 页面初始化,加载下拉选项
				 */
				loadOption : function() {
					var _this = this;
					$.ajax({
								url : '/product/loadOption',
								type : 'get',
								dataType : 'json',
								success : function(res) {
									_this.relaseState = res.data.releaseState;// 发布状态
									_this.projectFilesTypes = res.data.projectEnclosureCategory;// 销售计划附件类别
									_this.examineState = res.data.examineState;// 审核状态
									_this.permissions = res.data.TP_NAME;// 可查看岗位
								},
								error : function(err) {
									if(err.responseJSON.message=="session clean"){
				                        errorMessage(_this.$message, '登陆已失效重新登陆!');
				                        toLogin();
				                        return;
				                    }
									errorMessage(_this.$message, '初始化下拉列表出错！')
								}
							})
				},
				/**
				 * 
				 * 处理页面数据展示
				 */
				exhibition : function(res) {
					var _this = this;
					_this.activityItems = res.data.beanList
					var page = {}
					page['totalNumber'] = res.data.totalNumber
					page['totalPage'] = res.data.totalPage
					_this.pageBean = page
				},
				viewItem : function(index) { // 查看
					this.showActivityDialog = true
					this.viewTitle = '查看项目/活动详情'
					this.isDisabled = true
                    if(index == -1){
                        this.form = JSON.parse(sessionStorage.getItem("cacheVal"))
                        sessionStorage.setItem("cacheVal","");
                    }else{
                        this.form = this.activityItems[index]
                    }
					this.changeRadio();
				},
				changeRadio: function () { //审批通过or不通过
		    		if (this.form.approvalstatus === '审批未通过') {
		    			this.approveNoNotes = true
		    		} else {
		    			this.approveNoNotes = false
		    		}
		        },
				changeItem : function(index) { // 修改
					window.location.href = './productRelease?id='
							+ this.activityItems[index].id + '&type=activity'
				},
				resetSearchForm : function(formName) { // 清空搜索条件
					this.$refs[formName].resetFields()
					this.start = false;
					this.start2 = true;
					this.findProject()
				}
			}
		})
var sale = new Vue({
	el : '#sale',
	data : function() {
		return {
			showSaleDialog : false, // 查看个性dialog
			viewTitle : '', // 查看修改title
			isDisabled : false, // 是否修改状态
			form : {},
			category : category,
			organs : organs,
			permissions : permissions,
			saleFilesTypes : saleFilesTypes,
			currentpage : 1,// 当前页数
			pageBean : [// 分页参数列表
			],
			saleItems : [ // 销售计划列表
			],
			searchForm : { // 查询条件
				productcode : '',
				productname : '',
				insurancetype : '',
				productstate : '',
				releasestate : '',
				createtime : '',
				usechannel : '',
				viewabledept : '',
				viewablepsn : '',
				atttype : '',
				examineState : '',
				ident : 1
			},
			searchForm2 : { // 查询条件
				productcode : '',
				productname : '',
				insurancetype : '',
				productstate : '',
				releasestate : '',
				createtime : '',
				usechannel : '',
				viewabledept : '',
				viewablepsn : '',
				atttype : '',
				examineState : '',
				ident : 1
			},
			start : false,
			start2 : false,
			approveNoNotes:false
		}
	},
	created : function() {
		if(this.GetQueryString("update")==1){
			this.$alert('','修改成功', {
                confirmButtonText: '确定',
                type:'success',
                center:'true'
            });
		}
		this.loadOption()
		this.findProduct()
	},
	methods : {
		/**
		 * 下一页上一页按钮
		 */
		handleCurrentChange : function(val) {
			this.currentpage = val;
			if (this.start) {// false表示没点击搜索
				var data = JSON.stringify(this.searchForm);
			} else {
				var data = JSON.stringify(this.searchForm2);
			}
			this.findProduct(data);
		},
		GetQueryString:function(name){
	        var reg = new RegExp("(^|&)"+ name +"=([^&]*)(&|$)");
	        var r = window.location.search.substr(1).match(reg);
	        if(r!=null)return decodeURI(r[2]); return null;
        },
		findProduct : function(data) {
			var _this = this;
			if (!data) {
				if (this.start) {
					var data = JSON.stringify(this.searchForm);
				} else {
					var data = JSON.stringify(this.searchForm2);
				}
			}
			$.ajax({
				url : '/product/findProduct',
				type : 'post',
				data : {
					"data" : data,
					"page" : _this.currentpage
				},
				dataType : 'json',
				success : function(res) {
					_this.exhibition(res);
                    showWindInit();
				},
				error : function(err) {
					if(err.responseJSON.message=="session clean"){
                        errorMessage(_this.$message, '登陆已失效重新登陆!');
                        toLogin();
                        return;
                    }
                    if(err.status == 403){
                        errorMessage(_this.$message, "没有权限，请先申请该权限！");
                        return;
                    }
					errorMessage(_this.$message, '获取产品组合列表出错！')
				}
			})
		},
		/**
		 * 多条件查询
		 */
		selectProduct : function() {
			this.currentpage = 1;
			if(this.searchForm.productcode=="" && this.searchForm.productname=="" && this.searchForm.insurancetype=="" && this.searchForm.productstate=="" && this.searchForm.releasestate=="" && this.searchForm.createtime=="" && this.searchForm.usechannel=="" && this.searchForm.viewabledept=="" && this.searchForm.viewablepsn=="" && this.searchForm.atttype=="" && this.searchForm.examineState==""){
				if (this.start2) {
					this.start = false;
					this.start2 = false;
				}
			} else {
				this.start = true;
			}
			this.findProduct();
		},
		/*
		 * 页面初始化,加载下拉选项
		 */
		loadOption : function() {
			var _this = this;
			$.ajax({
				url : '/product/loadOption',
				type : 'get',
				dataType : 'json',
				success : function(res) {
					_this.category = res.data.saleInsuranceCategory;// 险种类别
					_this.productState = res.data.productState;// 产品状态
					_this.saleFilesTypes = res.data.saleEnclosureCategory;// 产品组合附件类别
					_this.relaseState = res.data.releaseState;// 发布状态
					_this.organs = res.data.postOrganization;// 可查看岗机构
					_this.examineState = res.data.examineState;// 审核状态
					_this.permissions = res.data.TP_NAME;// 可查看岗位
					_this.channels = res.data.useChannels// 使用渠道
				},
				error : function(err) {
					if(err.responseJSON.message=="session clean"){
                        errorMessage(_this.$message, '登陆已失效重新登陆!');
                        toLogin();
                        return;
                    }
					errorMessage(_this.$message, '初始化下拉列表出错！')
				}
			})
		},
		/**
		 * 
		 * 处理页面数据展示
		 */
		exhibition : function(res) {
			var _this = this;
			var sale_arr = [];
			_this.saleItems = res.data.beanList
			var page = {}
			page['totalNumber'] = res.data.totalNumber
			page['totalPage'] = res.data.totalPage
			_this.pageBean = page
		},
		viewItem : function(index) { // 查看
			this.showSaleDialog = true
			this.viewTitle = '查看产品组合详情'
			this.isDisabled = true
            if(index == -1){
                this.form = JSON.parse(sessionStorage.getItem("cacheVal"))
                sessionStorage.setItem("cacheVal","");
            }else{
                this.form = this.saleItems[index]
            }
			this.changeRadio();
		},
		changeRadio: function () { //审批通过or不通过
    		if (this.form.approvalstatus === '审批未通过') {
    			this.approveNoNotes = true
    		} else {
    			this.approveNoNotes = false
    		}
        },
		// 下载附件
		downloadFile : function(file) {
			window.location.href = '/product/downloadFile?data='
					+ encodeURIComponent(JSON.stringify(file));
		},
		changeItem : function(index) { // 修改
			window.location.href = './productRelease?id='
					+ this.saleItems[index].id + '&type=sale';
			//sidebarNavbar.currentNav()
		},
		resetSearchForm : function(formName) { // 清空搜索条件
			this.$refs[formName].resetFields()
			this.start = false;
			this.start2 = true;
			this.findProduct()
		}
	}
})

$('.nav-item').click(function() {
	var Idx = $(this).index()
	$('.tab-pane').removeClass('active')
	$('.tab-pane').eq(Idx).addClass('active')
	$('#product').find('.el-pager').children('li').eq(
			product.currentpage - 1).addClass('active')
	$('#activity').find('.el-pager').children('li').eq(
			activity.currentpage - 1).addClass('active')
	$('#sale').find('.el-pager').children('li')
			.eq(sale.currentpage - 1).addClass('active')
	console.log(product.currentpage)
})

var showWindInit = function(){
    if(!sessionStorage.getItem("cacheVal")){
        return;
    }
    var $sign = location.hash
    if($sign != undefined && $sign !=""){
        if($sign == '#product'){
            product.viewItem(-1)
        }
        if($sign == '#sale'){
            sale.viewItem(-1)
        }
        if($sign == '#activity'){
            activity.viewItem(-1)
        }
    }
}

$(function () {
//    $('.pcoded-left-item').children('li').siblings().removeClass('active pcoded-trigger')
//    $('#4').addClass('active pcoded-trigger')
//    $('#41').addClass('active')
    var $currentId = location.hash.split('#')[1]
    if ($currentId !== undefined) {
        $('.nav-tabs').children('li').children('a').removeClass('active')
        $('.nav-tabs').children('li').children('a[href="#'+ $currentId +'"]').addClass('active')
        $('.tab-content').children('div').removeClass('active')
        $('#'+$currentId).addClass('active')
    }
})